Package-level declarations

Types

Link copied to clipboard

JS/TS-friendly facade over com.sorinirmies.arrow.resiliencekit.AdaptiveLimiter.

Link copied to clipboard

JS/TS-friendly snapshot of com.sorinirmies.arrow.resiliencekit.AdaptiveLimiterStatistics.

Link copied to clipboard
class Bulkhead

JS/TS-friendly facade over com.sorinirmies.arrow.resiliencekit.Bulkhead.

Link copied to clipboard

JS/TS-friendly snapshot of com.sorinirmies.arrow.resiliencekit.BulkheadStatistics.

Link copied to clipboard
class Cache<T>

JS/TS-friendly facade over com.sorinirmies.arrow.resiliencekit.Cache, specialized to string keys (the common case for JS/TS caches) to keep this facade's generics simple.

Link copied to clipboard
data class CacheStatistics

JS/TS-friendly snapshot of com.sorinirmies.arrow.resiliencekit.CacheStatistics.

Link copied to clipboard

JS/TS-friendly facade over com.sorinirmies.arrow.resiliencekit.CircuitBreaker.

Link copied to clipboard
class Failover<T>

JS/TS-friendly facade over com.sorinirmies.arrow.resiliencekit.Failover -- tries a prioritized list of named providers, falling through to the next one when the current one's circuit is open or it fails outright.

Link copied to clipboard
data class FailoverProviderSpec<T>(val name: String, val block: () -> Promise<T>, val failureThreshold: Int = 5)

One named candidate for Failover.create's providers array.

Link copied to clipboard

JS/TS-friendly snapshot of com.sorinirmies.arrow.resiliencekit.FailoverProviderStatistics.

Link copied to clipboard

JS/TS-friendly facade over com.sorinirmies.arrow.resiliencekit.RateLimiter (token bucket).

Link copied to clipboard

JS/TS-friendly snapshot of com.sorinirmies.arrow.resiliencekit.RateLimiterStatistics.

Link copied to clipboard
object Retry

JS/TS-friendly facades over this library's top-level retry functions.

Link copied to clipboard

JS/TS-friendly facade over com.sorinirmies.arrow.resiliencekit.RetryBudget / retryWithBudget -- a system-wide guard against retry storms, shared across every call site retrying against a given downstream.

Link copied to clipboard

JS/TS-friendly facade over com.sorinirmies.arrow.resiliencekit.SlidingWindowCircuitBreaker.

Link copied to clipboard

JS/TS-friendly snapshot of com.sorinirmies.arrow.resiliencekit.SlidingWindowCircuitBreakerStatistics.

Link copied to clipboard

JS/TS-friendly facade over com.sorinirmies.arrow.resiliencekit.SlidingWindowRateLimiter.

Link copied to clipboard

JS/TS-friendly snapshot of com.sorinirmies.arrow.resiliencekit.SlidingWindowStatistics.

Link copied to clipboard

JS/TS-friendly facade over com.sorinirmies.arrow.resiliencekit.TimeLimiter.

Link copied to clipboard

JS/TS-friendly snapshot of com.sorinirmies.arrow.resiliencekit.TimeLimiterStatistics.

Functions

Link copied to clipboard
fun <T> hedge(block: () -> Promise<T>, hedgeDelayMillis: Double = 100.0, maxHedges: Int = 1): Promise<T>

JS/TS-friendly facade over com.sorinirmies.arrow.resiliencekit.hedge (speculative requests): fires a duplicate attempt after a delay if the first hasn't completed yet; the first to succeed wins. block may be invoked more than once, concurrently -- it must be safe to run multiple times in parallel (e.g. an idempotent GET).